Towards Bidirectional Higher-Order Transformation for Model-Driven Co-evolution
نویسندگان
چکیده
In model-driven development (MDD), numerous metamodels, models, and model transformations need to be taken into account. These MDD-based artifacts—although highly interdependent—are autonomously maintained. Changes in one artifact (e.g., in a model) are not automatically reflected in other dependent artifacts (e.g., in a model transformation). The barrier for a tight integration of MDD-based artifacts stems from two limitations of current approaches. On the one hand, model transformations are unidirectional and changes can be propagated in one direction only. On the other hand, changes can only be propagated into output artifacts of transformations, not into transformation definitions themselves. In order to overcome these co-evolution problems, our approach is based on establishing bidirectional transformations (BX) between modeling artifacts and on applying higher-order transformations (HOTs) on first-class model representations of transformation specifications. In this paper, we present a generic approach and provide initial prototypes for an integrated tool support which integrates BX into well-established Eclipse-based MDD frameworks, thereby neither being restricted to a specific modeling nor model transformation language.
منابع مشابه
Poster: A Bidirectional Model-driven Spreadsheet Environment
In this extended abstract we present a bidirectional model-driven framework to develop spreadsheets. By being model driven, our approach allows to evolve a spreadsheet model and automatically have the data co-evolved. The bidirectional component achieves precisely the inverse, that is, to evolve the data and automatically obtain a new model to which the data conforms. Keywords-Model-driven Engi...
متن کاملGRACE TECHNICAL REPORTS AO Software Behavior Model Evolution and Synchronization: A Bidirectional Graph Transformation Approach
The application of AO techniques in model driven software development still faces strong challenges. Two challenges we focus on in this report are AO model evolution and synchronization. In this report, we adopt a BiG (Bidirectional Graph Transformation) approach to AO model evolution and synchronization. The essential idea of our approach to AO model evolution and synchronization is that we ch...
متن کاملTowards a Taxonomy for Bidirectional Transformation
In Model Driven Engineering, bidirectional transformations are considered a core ingredient for managing both the consistency and synchronization of two or more related models. However, current languages still lack of a common understanding of their semantic implications hampering their applicability in practice. This paper illustrates a set of relevant properties pertaining to bidirectional mo...
متن کاملTowards Combinators for Bidirectional Model Transformations in Scala
In model-driven engineering (MDE), often models that conform to different metamodels have to be synchronized. Manually implemented model synchronizations that are not simple bijections are hard to maintain and to reason about. Special languages for expressing bidirectional transformations can help in this respect, but existing non-bijective languages are often hard to integrate with other MDE t...
متن کاملFrom Bidirectional Model Transformation to Model Synchronization
In model-driven engineering, it is common that there are several related models co-existing. When one model is updated or several models are updated at the same time, we need to propagate the updates across all models to make them consistent. This process is called synchronization. Bidirectional model transformation partially supports the synchronization of two models by updating one model acco...
متن کامل